package com.kaifamiao.lambda;

import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;

public class CompareIntegers {

    public static void main(String[] args) {

        /*
        Comparator<Integer> comp = new Comparator<Integer>() {
            @Override
            public int compare(Integer a, Integer b) {
                return -a.compareTo(b);
            }
        };
        */

        // 等号之后的 `(a,b) -> -a.compareTo(b)` 就是所谓的 Lambda表达式
        // 等号之前 comp 的类型 Comparator 就是 Lambda表达式 的 目标类型(target type)
        Comparator<Integer> comp = (a, b) -> -a.compareTo(b);

        Set<Integer> integers = new TreeSet<>( comp );
        integers.addAll( Set.of(2,1,5,9,3,6,4) );
        System.out.println( integers );

    }

}
